Книги-online
Ch 14.htm
назад
|
содержание
|
вперед
Добавление свойств
Добавление свойств — наиболее
трудоемкий процесс. В принципе, к свойству можно относиться как к переменной,
связанной с объектом. Свойства для элемента управления ActiveX создаются при
помощи процедур Property Get (возврат значения свойства) и property Let (установка
значения свойства). При этом для добавления свойства, доступного только для
чтения, можно определить только процедуру возврата значения свойства property
Get.
Существует и третья процедура
создания свойств property set, которая применяется при объявлении свойств, являющихся
объектами, как, например, свойство Font, которое само по себе имеет набор свойств:
шрифт, размер шрифта, начертание и другие. Однако такие сложные свойства пока
не являются предметом нашего изучения.
Обычно при объявлении
свойств также выполняется их начальная инициализация с использованием констант
и переменных. Константы и переменные для начальной инициализации при этом должны
быть объявлены, например:
Const prpToolTipTextDefault
= ""
Dim prpToolTipText As String
Объявление свойств выполняется
при помощи процедур свойств property
Let
и property Get следующим образом:
Public Property Get ToolTipText
() As String
ToolTipText = prpToolTipText
End Property
Public Property Let ToolTipText(ByVal
New_ToolTipText As String)
prpToolTipText = New_ToolTipText
PropertyChanged "ToolTipText"
End Property
Инициализация свойств
(присвоение значений по умолчанию) выполняется по событию initproperties контейнера
userControl с использованием констант и переменных инициализации:
Private Sub UserControl
Initproperties ()
prpToolTipText = prpToolTipTextDefault
End Sub
Для сохранения значения
свойства, установленного во время разработки приложения, вы можете использовать
объект типа propertyBag, который содержится по умолчанию в контейнере userControl
любого создаваемого в Visual Basic 6 объекта ActiveX. Объект PropertyBag имеет
два метода для записи/чтения значения свойства: writeproperty и Readproperty.
Синтаксис метода writeproperty следующий:
PropertyBag.WriteProperty
(свойство, значение, эначениеПоУмолчанию)
где:
-
Property — наименование
свойства;
-
valProperty — сохраняемое
значение свойства;
-
valPropertyDef — значение
свойства по умолчанию. Метод Readproperty, используемый для чтения данных
из объекта
PropertyBag,
выглядит
так:
PropertyBag.WriteProperty
(свойство, переменная)
где:
-
property — наименование
свойства;
-
varForProperty — переменная,
в которую передается сохраняемое значение свойства.
Кроме этих методов в контейнере
UserControl существуют два специальных
события:
WriteProperties И ReadProperties.
с помощью этих событий и ме
тодов
вы можете установить и прочитать значения свойств:
Private Sub UserControlJReadProperties(PropBag
As PropertyBag)
prpToolTipText
=
PropBag.ReadProperty("ToolTipText",
prpToolTipTextDefault)
End Sub
Private Sub UserControl_WriteProperties(PropBag
As PropertyBag)
Call PropBag.WriteProperty("ToolTipText",
prpToolTipText,
prpToolTipTextDefault)
End Sub
Для добавления свойства
с помощью диалогового окна
Add Procedure
(рис. 14.4) следует установить
переключатель
Type
(Тип) в значение
Property
(Свойство). После
этого автоматически будет добавлен шаблон кода, в который затем необходимо внести
следующие операторы:
Public Property Get NewPropertyO
As Variant
End Property
Public Property Let NewProperty(ByVal
vNewValue As Variant)
End Property
Добавим новое свойство
Newproperty для созданной нами ранее кнопки
cbNewForm.
Свойство будет
содержать текстовое значение. Для этого необходимо выполнить следующие действия:
1. Добавьте в исходный
текст код, указанный ниже. Можно воспользоваться командой
Add Procedure
(Добавить процедуру) меню
Tools
(Сервис), выбрав из переключателя
Type
значение
Property
(Свойство). В начало исходного текста добавьте
описание константы:
Const prpNewPropertyDefault
= "Новое свойство"
Public Property Get NewPropertyO
As String
NewProperty = prpNewPropertyDefault
End Property
Public Property Let NewProperty(ByVal
vNewValue As String)
NewProperty() = vNewValue
End Property
2. Для дальнейшей демонстрации
использования свойства создайте файл с расширением осх с помощью команды
Make cbNewForm.ocx
меню
File.
3. Для присвоения свойства
и чтения его значения создайте новый проект типа
Standard EXE.
Назовите
его TestProject. С помощью окна компонентов
Components
(Компоненты),
открываемого командой
Components
меню
Project
(Проект), подключите
созданный компонент к этому проекту. Форму
Formi
переименуйте в frmTestForm.
4. После подключения новый
элемент управления появляется на панели элементов управления.
5. Добавьте этот элемент
управления в форму и назовите его cbNewFormAbout.
6. Определите следующие
действия для процедуры обработки события нажатия кнопки мыши:
MsgBox cbNewFormAbout.NewProperty,,
"Сведения о свойстве".
7. Запустите проект на
выполнение и, нажимая на кнопку, убедитесь в правильности возвращаемого значения
свойства.
назад
|
содержание
|
вперед